package net.zigin.nhi.could.waste.dao;

import net.zigin.nhi.could.waste.dto.WasteBaseDto;
import net.zigin.nhi.could.waste.dto.WasteCountDto;
import net.zigin.nhi.could.waste.model.WasteBase;
import net.zigin.nhi.could.waste.vo.WasteBaseVo;
import net.zigin.nhi.could.waste.vo.WasteCountVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/*#################################################################*
# 说明:以下代码通过哲勤代码生成工具自动生成    
# 工具:GeneratorCode
# 作者:mgw1986                                                  
# 生成时间:2021-9-20 17:17:57                                               
##################################################################*/

/**
 *  WasteBase数据访问类
 * @ClassName: WasteBaseMapper
 * @author mgw1986
 * @date 2021-9-20 17:17:57
 * @version V1.0
 */
public interface WasteBaseMapper extends BaseMapper<WasteBase, String>  {

    List<WasteCountVo> eachMonth(@Param("hospitalBaseId") String hospitalBaseId);

    List<WasteCountVo> weekClassify(@Param("hospitalBaseId") String hospitalBaseId);

    List<WasteCountVo> fifteenDepart(Map<String, Object> paramMap);

    List<WasteBaseVo> getInfoPageByCondition(Map<String, Object> paramMap);

    Integer getCountByCondition(Map<String, Object> paramMap);

    List<WasteCountVo> statusReport(WasteCountDto wasteCountDto);

    List<WasteCountVo> classifyReport(WasteCountDto wasteCountDto);

    List<WasteCountVo> classifyDepartReport(WasteCountDto wasteCountDto);

    List<WasteCountVo> classifyHospitalReport(WasteCountDto wasteCountDto);

    List<WasteBase> collectList(Map<String,Object> paramMap);

    Float weightSum(@Param("hospitalBaseId") String hospitalBaseId);

    List<WasteBase> listByWasteBoxRecordId(@Param("wasteBoxRecordId") String wasteBoxRecordId);

    void remove(@Param("id") String id);
}